Consumers are increasingly using kiosks to conduct business with enterprises. The kiosks come in a variety of sizes and are used for a variety of purposes. Some kiosks are drive through, such as fast food establishments, pharmacies, banks, and the like. Other kiosks are stationary located in gas stations, airlines, grocery stores, department stores, and the like.
In addition, what is considered a kiosk is evolving with today's technology. For example, digital signs now provide advertisements and mechanisms for users to interact with the displays to perform transactions. Such mechanisms include blue tooth communication, Near Field Communication (NFC), Quick Response (QR) code scanning, Wi-Fi communication, and the like.
Even websites and stores online may be viewed as a form of a kiosk. A tremendous amount of services are now available online via website portals. Business even attempt to tie their backend systems to existing website services offered by third parties.
By and Large, Large scale Self Service Device (SSD) systems (and websites/applications) must communicate with a heterogeneous mixture of reservation and service providers via numerous disparate and independent interfaces. Many of these interfaces provide similar functionality but must be used in conjunction with custom business rules to provide a complete solution. These interfaces, in combination with custom software, generally use a combination of web services, file transfers, databases, messages, or screen-scraping processes as ad-hoc gateways to communicate with vendor systems.
Even though multiple customers may be using services from a same host, it can be difficult to maintain a common host integration codebase due to the presence of customer-specific logic. Additionally, it is difficult for a customer to transition from one host to another host when the customer-specific business logic is strongly tied to the integration code.
Moreover, travel solutions are typically built over a large variety of services that are provided by third-party host systems. These host systems uses a wide variety of different technologies for providing communication. This makes it extremely challenging to provide a clean and maintainable interface for implementing connectivity to a variety of services within a single solution.